import {extend} from 'umi-request';
import {dev} from "./my-version";


/**
 * request 是通过 umi-request 库创建的一个实例对象，用于发送 HTTP 请求
 * extend 方法用于创建一个新的请求实例并以指定的参数扩展原有实例,使用 extend 方法来创建 request 实例
 */

const request = extend({
    prefix: dev.url,  // 统一的请求前缀
    timeout: 3600,                    // 超时时间
});

// // 请求拦截器-----本版本不使用
// request.interceptors.request.use((url: string, options: IRequestOptions) => {
//     // 全局请求头携带 token
//     const regex = /\/operation\/login$/;
//     const token = localStorage.getItem('token');
//
//     if (!regex.test(url)) {
//         //不是登录页面
//         if (token) {
//             console.log(token)
//             //存在token就把token设在请求头上
//             options.headers = {
//                 ...options.headers,
//                 'token': token,
//                 Authorization: `Bearer ${token}`,
//
//
//             };
//         } else {
//             message.error("请先登录")
//             window.location.href = '/login';
//         }
//     } else {
//         //是登录页面
//         options.headers = {
//             ...options.headers,
//         };
//     }
//     return {
//         url,
//         options,
//         interceptors: true,
//     };
// });


// 对实例request进行响应拦截, 统一处理接口信息----本次不拦截
// request.interceptors.response.use(async (response) => {
//     const res = await response.clone().json();
//     //正则匹配登录接口
//     const regex = /\/operation\/login$/;
//     if (regex.test(response.url) && res.code === 200) {
//         localStorage.setItem('token', res.data.data);
//     } else if (res.code !== 200) {
//         message.error(res.message);
//     }
//     return response;
// });

export default request;
